<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>

<body>
    <!-- 
    1.如何产生闭包？
      * 当一个嵌套的内部（子）函数引用了嵌套的外部（父）函数的变量（函数）时就产生了闭包
    2.闭包到底是什么？
      * 使用Chrome调试查看
      * 理解一: 闭包是嵌套的内部函数（绝大部分人）
      * 理解二: 包含被引用变量（函数）的对象（极少数人）
      * 注意: 闭包存在于嵌套的内部函数中
    3.产生闭包的条件？
      * 函数嵌套
      * 内部函数引用了外部函数的数据（变量/函数）
      * 执行外部函数
     -->
    <script>
        // function fn1() {
        //     var a = 2

        //     function fn2() {
        //         console.log(a);
        //     }
        //     fn2()
        // }
        // fn1()

        let lessons = [{
            title: '媒体查询响应式布局',
            click: 89,
            price: 12
        }, {
            title: "FLEX 弹性盒布局",
            click: 45,
            price: 120.
        }, {
            title: 'GRID 栅格系统',
            click: 19,
            price: 67
        }, {
            title: '盒子模型详解',
            click: 29,
            price: 300
        }]
    </script>
</body>

</html>